package model.tokens;

import java.util.Stack;

import model.semantics.Node;

/**
 * Represents a token that can be converted into a node.
 */

public abstract class NodeToken<T> extends Token<T> {

	public NodeToken(String label) {
		super(label);
	}

	/**
	 * Make a new instance of an operation node.
	 * @param nodes the current stack of operation nodes.
	 * @return a new operation node.
	 */
	public abstract Node<T> makeNewInstance(Stack<Node<T>> nodes);
}
